﻿using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Linq;
using System.Text;

using _3.Datos.Eventos;
using _4.Modelado.Eventos;

namespace _2.Logica.Eventos
{
    public class EventoL : Negocio
    {
        public void EventoGuardar(Evento obj)
        {
            try
            {
                IniciarTransanccion();


                var objBD = new EventoDB();

                objBD.EventoGuardar(comando, obj);

                ConfirmarTransaccion();

            }
            catch (Exception e)
            {
                DeshacerTransaccion();
                throw e;
            }
        }

        public void EventoEliminar(Evento obj)
        {
            try
            {
                this.IniciarTransanccion();

                var objBD = new EventoDB();

                objBD.EventoEliminar(this.comando, obj);

                this.ConfirmarTransaccion();

            }
            catch (Exception e)
            {
                this.DeshacerTransaccion();
                throw e;
            }
        }

        public List<Evento> EventosConsultar(Evento obj)
        {
            try
            {
                IniciarTransanccion();

                var objBD = new EventoDB();

                List<Evento> lista = objBD.EventosConsultar(this.comando,obj);

                CerrarConexion();

                return lista;
            }
            catch (Exception exc)
            {
                CerrarConexion();
                throw exc;
            }
        }

        public DataSet EventosConsultarDs(Evento obj)
        {
            try
            {
                IniciarTransanccion();

                var objBD = new EventoDB();

                DataSet ds = objBD.EventosConsultarDs(this.comando, obj);

                CerrarConexion();

                return ds;
            }
            catch (Exception exc)
            {
                CerrarConexion();
                throw exc;
            }
        }
        
    }
}
